Disk files are information storage devices which utilize a rotatable disk with concentric data tracks containing the information, a head for reading or writing data onto the various tracks, and an actuator connected by a support arm assembly to the head for moving the head to the desired track and maintaining it over the track centerline during read or write operations. The movement of the head to a desired track is referred to as track accessing or "seeking", while the maintaining of the head over the centerline of the desired track during a read or write operation is referred to as track "following".
The actuator is typically a "voice coil motor" (VCM) which comprises a coil movable through the magnetic field of a permanent magnetic stator. The application of current to the VCM causes the coil, and thus the attached head, to move radially. The acceleration of the coil is proportional to the applied current, so that ideally there is no current to the coil if the head is perfectly stationary over a desired track.
In disk files which have a relatively high density of data tracks on the disk, it is necessary to incorporate a servo control system to maintain the head precisely over the centerline of the desired track during read or write operations. This is accomplished by utilizing prerecorded servo information either on a dedicated servo disk or on sectors angularly spaced and interspersed among the data on a data disk. The servo information sensed by the read/write head (or the dedicated servo head if a dedicated servo disk is used) is demodulated to generate a position error signal (PES) which is an indication of the position error of the head away from the nearest track centerline. The value of the PES is used by the servo control system to generate a control signal to the VCM to reposition the head over the track centerline during track following. Both the PES and a target track signal are used by the servo control system to generate a control signal to the VCM for moving the head from one track to another track during track seeking.
In order to determine the value of the control signal to the VCM, it is necessary to know the relationship between the current applied to the VCM and the acceleration of the movable coil to which the heads are attached. This relationship is given by the acceleration factor (K.sub.f /M) which defines the acceleration of the coil per unit of input current. The term K.sub.f is the force factor which relates force applied to the coil per unit of input current, and M is the mass of the movable portion of the VCM (i.e. the coil, coil support and bearings) and attached head/arm assembly. The nominal value of K.sub.f for a specific disk file is determined from nominal values of magnetic flux density in the gap between the magnetic structure and the coil, the length of the coil turns exposed to the flux, the number of turns in the coil and the thickness of the wire forming the coil. Because each of these parameters has a tolerance about its nominal value, the actual value of K.sub.f for a specific VCM will have a tolerance about the nominal value. Similarly, the mass M will have a tolerance about some nominal value. Thus different VCMs of the same design will have different values of actual K.sub.f /M. Since it is not feasible to design a unique servo control system for each VCM, with its unique value of K.sub.f /M, prior art servo control systems have been designed around a constant nominal value of K.sub.f /M.
In addition to variation in the nominal acceleration factor K.sub.f /M from disk file to disk file, the value of the force factor K.sub.f may also vary with the position of the movable coil in the VCM, which directly corresponds to head position. In prior art disk files, the servo control system cannot compensate for any variation in K.sub.f with head position. For this reason, an important consideration in the design of the VCM has been to make K.sub.f constant with head position. This has been accomplished by modifications to the VCM structure, such as tapering of the gap between the magnet structure and the coil, and removal of material from the center pole of the magnet structure.
A recent development in disk file servo control systems, as described in assignee's U.S. Pat. No. 4,679,103, is a digital servo control system, which, as part of the computation of the control signal to the actuator, makes use of a state estimator algorithm to estimate the position and velocity of the head. In this type of servo control system, a microprocessor receives, at discrete sample times, digital values corresponding to the PES and the actuator input current, and computes, through the use of the state estimator algorithm, a digital control signal. The digital control signal is then converted to an analog signal and amplified to provide a new actuator input current.
The method of estimating the state of the physical plant to be controlled in a digital control system requires the use of estimator "constants", the derivation of which is described in Digital Control of Dynamic Systems, Franklin and Powell, Addison-Wesley Publishing Co. (1983), chapter 6, pages 131-139. In the case of a disk file, these estimator constants are dependent upon the values of certain physical parameters of the disk file, such as the gain of the VCM power amplifier, the PES gain, the time between PES samples, the mass of the movable portion of the VCM and attached head/arm assembly, and the VCM force factor.
The estimator constants are generally referred to as "constants" because the values of the physical parameters from which they are determined are generally invariable. However, as just described, the acceleration factor is not constant, but varies from disk file to disk file, while the VCM force factor varies with head position in a specific disk file. Because the acceleration factor is required to determine the value of the VCM control signal in conventional disk files, as well as to determine the estimator constants in a disk file having the specific type of digital servo control system described in the '103 patent, the use of a constant nominal value of K.sub.f /M will result in an error in the value of the generated control signal. This control signal error will cause the head to undershoot or overshoot the target track when the head is moved between tracks, which will result in a unacceptable delay in the arrival of the head to the target track centerline, or in a seek error.